home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 August: Tool Chest / Dev.CD Aug 98 TC.toast / Sample Code / Interapplication Communication / MenuScripter 4.0 / Sources / MSGlobals.h < prev    next >
Encoding:
Text File  |  1996-07-09  |  5.2 KB  |  256 lines  |  [TEXT/CWIE]

  1. // MSGlobals.h
  2. //
  3. // Original version by Jon Lansdell and Nigel Humphreys.
  4. // 4.0 and 3.1 updates by Greg Sutton.
  5. // ©Apple Computer Inc 1996, all rights reserved.
  6.  
  7. /*
  8.     Changes for 3.1
  9.     
  10.     12-Oct-95    : CW : Added gHasDragManager flag, gDragTrackingHandlerUPP and
  11.                        gDragReceiveHandlerUPP Drag Manager UPPs (all globals).
  12.     1-Nov-95    : DS : Made Changes for GX Printing.
  13.  
  14.     Changes for 4.0
  15.     
  16.     29-Feb-96    : GS : Added struct AppRec.
  17.     29-Feb-96    : GS : Added OSAID theScript to DocRec.
  18.     29-Feb-96    : GS : Added struct MenuScriptRecord.
  19.     29-Feb-96    : GS : Added AS Subroutine menu.
  20. */
  21.  
  22. #ifndef __MSGLOBALS__
  23. #define __MSGLOBALS__
  24.  
  25. #include <Types.h>
  26. #include <Quickdraw.h>
  27. #include <Menus.h>
  28. #include <Editions.h>
  29. #include <Printing.h>
  30. #include <Drag.h>
  31. #include <GXPrinting.h>
  32. #include <OSA.h>
  33.  
  34. #if PRAGMA_ALIGN_SUPPORTED
  35. #pragma options align=mac68k
  36. #endif
  37.  
  38. #define  MenuScripterAppSig 'SVEd'
  39.  
  40. #define  WindowID     128
  41. #define  ErrorAlert   256
  42. #define  AdviseAlert  257
  43.  
  44.  
  45. #define        kRevertDialog                1002
  46. //#define        kStdOkItemIndex            1
  47. //#define        kStdCancelItemIndex        2
  48.  
  49.  
  50. #define        kSaveDontsaveDialog            1003
  51. //#define        kStdOkItemIndex            1
  52. //#define        kStdCancelItemIndex        2
  53. #define            kDontSaveItemIndex        3
  54.  
  55.  
  56. #define        kMiscStrings                1000
  57. #define            kQuittingIndex            1
  58. #define            kClosingindex            2
  59.  
  60.  
  61. //    Menu Resource IDs
  62.   
  63. #define  appleID        128
  64. #define  fileID            129
  65. #define  editID            130
  66. #define  mfontID        131
  67. #define     sizeID            132
  68. #define  styleID        133
  69. #define  mscriptID        134
  70. #define  subroutineID    135
  71.   
  72. #define  kLastID        subroutineID
  73.  
  74.  
  75. //    Items in Apple Menu
  76.   
  77. #define  aboutItem  1
  78.   
  79.  
  80. //    Items in File Menu
  81.   
  82. #define  fmNew                  1
  83. #define  fmOpen              2
  84. #define  fmClose              4
  85. #define  fmSave              5
  86. #define  fmSaveAs              6
  87. #define  fmRevert              7
  88. #define  fmPageSetUp          9
  89. #define  fmPrint              10
  90. #define  fmPrintOne          11
  91. #define  fmQuit              13
  92.  
  93. #define fmNoGXPrint 10
  94. #define fmNoGXQuit  12
  95.   
  96.  
  97. //    Items in Edit Menu
  98.  
  99. #define  undoCommand              1
  100. #define  cutCommand              3
  101. #define  copyCommand              4
  102. #define  pasteCommand              5
  103. #define  clearCommand              6
  104. #define  selectAllCommand          7
  105.  
  106.  
  107. //    Items in Style Menu
  108.  
  109. #define  cPlain              1
  110. #define  cBold                  2
  111. #define  cItalic             3
  112. #define  cUnderline         4
  113. #define  cOutline             5
  114. #define  cShadow             6
  115. #define  cCondense              7
  116. #define  cExtend             8
  117.  
  118.  
  119. //    Items in Script Menu
  120.  
  121. #define  cCompile             1
  122. #define  cExecute             2
  123. #define  cResultWindow      3 
  124.  
  125.  
  126. // Items in AS Subroutine Menu
  127.  
  128. #define  cScript1            1
  129. #define  cScript2            2
  130. #define  cScript3            3
  131. #define  cScript4            4
  132.  
  133.  
  134. //    Entry of Menu in myMenus
  135.  
  136. #define  appleM         0
  137. #define  fileM              1
  138. #define  editM              2
  139. #define  fontM              3
  140. #define  sizeM              4
  141. #define  styleM         5
  142. #define  scriptM         6
  143. #define  subroutineM    7
  144. #define  kLastMenu        subroutineM
  145.  
  146.  
  147. //    Save Changes Dialog Items
  148.   
  149. #define  aaSave              1
  150. #define  aaDiscard              2
  151. #define  aaCancel              3
  152.  
  153. #define  kSuspendResumeMessage         1        // high byte of suspend/resume event message
  154. #define  kResumeMask                 1        // bit of message field for resume vs. suspend
  155. #define  kMouseMovedMessage          0xFA        // high byte of mouse-moved event message
  156. #define  kNoEvents                     0        // no events mask
  157.  
  158. struct AppRec
  159. {
  160.     Str63            theName;
  161.     FSSpec            theSpec;
  162.     OSAID            theScriptID;
  163. };
  164. typedef struct AppRec AppRec;
  165.  
  166. #define kMaxTELength    32000
  167. #define kMaxPages         1000                // Assumes pages > 32 pixels high
  168.  
  169. #define kOrdinaryWind 0
  170. #define kResultsWind  1
  171.  
  172. struct DocRec
  173. {
  174.     short            windowType;
  175.     TEHandle        theText;
  176.     ControlHandle    vScrollBar;
  177.     ControlHandle    hScrollBar;
  178.     WindowPtr        theWindow;
  179.     Boolean            dirty;
  180.     short            refNum;
  181.     short            theFont;
  182.     short            theSize;
  183.     Style            theStyle;
  184.     Str255            theFileName;
  185.     FSSpec            theFSSpec;
  186.     THPrint            thePrintSetup;
  187.     Boolean            everSaved;
  188.     gxJob            documentJob;    // Job for document
  189.     OSAID            theScriptID;
  190. };
  191. typedef struct DocRec DocRec;
  192. typedef DocRec *DPtr;
  193.  
  194. typedef short PageEndsArray[kMaxPages];
  195.  
  196. struct HeaderRec
  197. {
  198.     Str255        theFont;
  199.     short        theSize;
  200.     Style        theStyle;
  201.     short        theLength;
  202.     short        lastID;        // Now not used - we'll keep for old files sake
  203. };
  204. typedef struct HeaderRec HeaderRec;
  205. typedef HeaderRec *HPtr, **HHandle;
  206.  
  207.  
  208. struct MenuScriptRecord
  209. {
  210.     OSAID        theScriptID;
  211.     short        theResID;
  212.     Boolean        fChanged;
  213. };
  214. typedef struct MenuScriptRecord MenuScriptRecord;
  215. typedef MenuScriptRecord *MenuScriptRecPtr;
  216.  
  217.  
  218. #ifndef __COMPGLOBALS__
  219.  
  220. extern AppRec        gAppRec;
  221.  
  222. extern short        gNewDocCount;
  223. extern MenuHandle    myMenus[kLastMenu+1];
  224. extern short        gFontMItem;
  225. extern Boolean        gQuitting;
  226. extern Cursor        editCursor;
  227. extern Cursor        waitCursor;
  228. extern Boolean        gInBackground;
  229.   
  230.   // Now for the environment variables set up by Gestalt
  231.   
  232. extern Boolean        gGestaltAvailable;
  233. extern Boolean        gAppleEventsImplemented;
  234. extern Boolean        gAliasManagerImplemented;
  235. extern Boolean        gEditionManagerImplemented;
  236. extern Boolean        gOutlineFontsImplemented;
  237. extern Boolean        gRecordingImplemented;
  238. extern Boolean        gHasDragManager;
  239. extern Boolean        gGXIsPresent;
  240. extern Boolean        gHasProcessManager;
  241.  
  242. extern ControlActionUPP            gHScrollActionUPP;
  243. extern ControlActionUPP            gVScrollActionUPP;
  244. extern UserItemUPP                 gDefaultButtonUPP;
  245. extern DragTrackingHandlerUPP    gDragTrackingHandlerUPP;
  246. extern DragReceiveHandlerUPP    gDragReceiveHandlerUPP;
  247.  
  248. #endif
  249.  
  250. OSErr GXPrintingEventOverride(EventRecord *anEvent, Boolean filterEvent);
  251.  
  252. #if PRAGMA_ALIGN_SUPPORTED
  253. #pragma options align=reset
  254. #endif
  255.  
  256. #endif